-- ----------------------------------------------------------------------------------------------------------------------------
-- part 1. 首先
        -- 设置小批量随机的样本数量和策略，可以细化至每个分类：训练过程中，准备过程之前，动态修改 v_batch_amt
        do
        $$
        declare
          v_batch_amt int  := 3;   -- 在此修改v_batch_amt
        begin
          update sm_sc.tb_nn_node tb_node
          set 
            node_fn_asso_value = 
              array
              [
                array[1, 11, 21, 31]
              , array[10, 20, 30, 40]
              , array_fill(v_batch_amt, array[4])
              ]
          where node_fn_type = '00_buff_slice_rand_pick'
            and node_type = 'input_01'
            and work_no = -000000001
          ;
          commit;
        end
        $$
        language plpgsql;
        
        call sm_sc.prc_nn_prepare
        (
          -000000001 -- i_work_no
        , 300    -- 本轮(第一轮)训练规划至 300 次，至于已经训练了几次，
                 -- 要查询 select learn_cnt from sm_sc.tb_classify_task where work_no = -000000001 
        );
        
        -- -- 执行训练 
        -- -- call sm_sc.prc_nn_train(

-- ----------------------------------------------------------------------------------------------------------------------------
-- part 2. 其次
        -- 设置小批量随机的样本数量和策略，可以细化至每个分类：训练过程中，准备过程之前，动态修改 v_batch_amt
        do
        $$
        declare
          v_batch_amt int  := 3;   -- 在此修改v_batch_amt
        begin
          update sm_sc.tb_nn_node tb_node
          set 
            node_fn_asso_value = 
              array
              [
                array[41, 51, 61, 71]
              , array[50, 60, 70, 80]
              , array_fill(v_batch_amt, array[4])
              ]
          where node_fn_type = '00_buff_slice_rand_pick'
            and node_type = 'input_01'
            and work_no = -000000001
          ;
          commit;
        end
        $$
        language plpgsql;

        call sm_sc.prc_nn_prepare
        (
          -000000001 -- i_work_no
        , 400    -- 本轮(第二轮)增量训练规划至 400 次
        );
        
        -- -- 执行训练 
        -- -- call sm_sc.prc_nn_train(

-- ----------------------------------------------------------------------------------------------------------------------------
-- part 3. 再次
        -- 设置小批量随机的样本数量和策略，可以细化至每个分类：训练过程中，准备过程之前，动态修改 v_batch_amt
        do
        $$
        declare
          v_batch_amt int  := 3;   -- 在此修改v_batch_amt
        begin
          update sm_sc.tb_nn_node tb_node
          set 
            node_fn_asso_value = 
              array
              [
                array[81, 91, 101, 111]
              , array[90, 100, 110, 120]
              , array_fill(v_batch_amt, array[4])
              ]
          where node_fn_type = '00_buff_slice_rand_pick'
            and node_type = 'input_01'
            and work_no = -000000001
          ;
          commit;
        end
        $$
        language plpgsql;
        
        call sm_sc.prc_nn_prepare
        (
          -000000001 -- i_work_no
        , 500    -- 本轮(第二轮)增量训练规划至 500 次
        );
        
        -- -- 执行训练 
        -- -- call sm_sc.prc_nn_train(